-
-
Notifications
You must be signed in to change notification settings - Fork 0
fix: Add graceful shutdown for web server and tray #26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #26 +/- ##
==========================================
+ Coverage 65.77% 72.05% +6.28%
==========================================
Files 14 15 +1
Lines 409 551 +142
==========================================
+ Hits 269 397 +128
- Misses 140 154 +14
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
b48756b to
b1ac6e0
Compare
|
Introduces a new signal_handler module providing ShutdownSignal and ShutdownCoordinator for managing graceful shutdown across threads. Refactors main entry point, tray, and web modules to support coordinated shutdown using these primitives. Adds async and sync thread registration, monitoring, and timeout-based forced exit. Includes comprehensive unit and integration tests for shutdown coordination and signal handling.
Replaces the FORCE_EXIT_DISABLED static and related methods with a configurable exit function in ShutdownCoordinator. This enables tests to inject a no-op or custom exit handler, improving testability and removing Windows-specific test logic. Updates all relevant tests to use the new constructor with a mock exit function.
f39dc99 to
dda772e
Compare
|



Description
Introduced a ShutdownSignal utility for coordinated shutdown across threads. The web server and tray now support graceful shutdown, with the main function orchestrating thread lifecycles and timeouts. Added dependencies on ctrlc and tokio to support async shutdown handling.
Screenshot
Issues Fixed or Closed
Roadmap Issues
Type of Change
Checklist
AI Usage